$sideBgColor = #F7F8FA;
$borderColor = #4676d0;
#app {

  height 100%

  .common-layout {
    height: 100%;

    // left side

    .el-aside {
      background-color: $sideBgColor;

      .title-box {
        padding: 6px 10px;
        display: flex;
        align-items: center
        color: #000;
        font-size: 20px;
        height: 44px
        span {
          padding-top: 5px;
          padding-left: 10px;
        }
      }

      .chat-list {
        display: flex
        flex-flow: column
        background-color: #F7F8FA
        border-top: 1px solid #F7F8FA
        border-right: 1px solid #F7F8FA

        .search-box {
          flex-wrap: wrap
          padding: 10px 15px;
          //background-color #FFFFFF
          // height: 46px
          .el-input__wrapper {
            // height: 100%
            background-color: #363535;
            box-shadow: none;
          }
        }

        // 隐藏滚动条

        ::-webkit-scrollbar {
          width: 0;
          height: 0;
          background-color: transparent;
        }

        .content {
          //display flex
          //flex-wrap: wrap;
          //flex-direction column
          width: 100%
          overflow-y: scroll


          .chat-list-item {
            display: flex
            width: 100%
            justify-content: flex-start;
            align-content: center;
            padding: 8px 18px
            box-sizing: border-box;
            margin:0 6px;
            flex-wrap: wrap;
            //border-bottom: 1px solid #F7F8FA
            cursor: pointer

            &:hover {
              // background-color #FFFFFF
            border-radius: 6px;

               box-shadow:   0px 0px 2px 1px #F3F4F6;
            }

            .avatar {
              width: 28px;
              height: 28px;
              border-radius: 50%;
            }

            .chat-title-input {
              font-size: 14px;
              margin-top: 4px;
              margin-left: 10px;
              overflow: hidden;
              white-space: nowrap;
              text-overflow: ellipsis;
              width: 180px;
            }

            .chat-title {
              color: #51566B;
              padding: 5px 10px;
              max-width 180px;
              font-size 14px;
              overflow: hidden;
              white-space: nowrap;
              text-overflow: ellipsis;
            }

            .btn {
              display none
              position: absolute;
              right: 6px;
              top: 16px;
              color #969CB1

              .el-icon {
                margin-right 8px;
              }
            }
          }

          .chat-list-item.active {
            background-color: #FFFFFF;
            border-radius: 6px;
            box-sizing: border-box;

            box-shadow:   0px 0px 2px 1px #F3F4F6;

            .btn {
              display inline
            }
          }
        }
      }


      .tool-box {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding 0 20px 10px 20px;
        border-top 1px solid #F7F8FA;

        .user-info {
          width 100%
          padding-top 10px;

          .el-dropdown-link {
            width 100%;
            cursor: pointer
            display flex

            .el-image {
              width: 24px;
              height: 24px;
              border-radius: 50%;
            }

            .username {
              display flex
              line-height 22px;
              width 230px;
              padding-left 10px;

            }

            .el-icon {
              color: #cccccc;
              line-height 24px;
            }
          }

        }
      }
    }

    .el-main {
      overflow: hidden;
      --el-main-padding: 0;
      height: 100vh
      margin: 0;
      display: flex;
      // justify-content:center
      align-content: center;
      flex-wrap: wrap
      .chat-head {
        width: 100%;
        height: 94px;
        padding: 10px
        box-sizing: border-box;
        background-color: #FFFFFF;
        display: flex;
        align-items: center

        .chat-config {
          display flex
          flex-direction row
          align-items: center;
          flex: 1
          justify-content space-between;
          padding-top 10px;
          box-sizing border-box;
          margin :0 6px;
          background-color: #FFFFFF;
          .role-select-label {
            color #ffffff
          }

          .el-select {
            //max-width 150px;
            margin-right 10px;
          }

          .role-select {
            max-width 130px;
          }

          .el-button {
            .el-icon {
              margin-right 5px;
            }
          }
        }

        .iconfont {
          margin-right 5px;
        }
      }

      .right-box {
        min-width: 0;
        flex: 1;
        background-color: #ffffff
        // border-left: 1px solid #F7F8FA
        // padding: 20px;
        box-sizing: border-box;
        // height: inherit;
        #container {
          overflow: hidden;
          width: 100%;
          // padding :10px 160px;
          box-sizing: border-box;
          ::-webkit-scrollbar {
            width: 0;
            height: 0;
            background-color: transparent;
          }

          .chat-box {
            overflow-y: scroll;
            //border-bottom: 1px solid #F7F8FA

            // 变量定义
            --content-font-size: 16px;
            --content-color: #c1c1c1;

            font-family: 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;
            // padding: 0 0 50px 0;
            margin :10px auto;
            width: 100%
            .chat-line {
              font-size: 14px;
              display: flex;
              align-items: flex-start;

            }
          }

          .re-generate {
            position: relative;
            display: flex;
            justify-content: center;

            .btn-box {
              position: absolute
              bottom: 10px;

              .el-button {
                .el-icon {
                  margin-right 5px;
                }
              }

            }
          }

          .input-box {
            background-color: #ffffff
            display: flex;
            justify-content: center;
            align-items: center;
            // box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
            padding 0 15px;
            margin :10px 160px
            // margin-bottom: 4px
            .input-container {
              width 100%
              margin: 0;
              border: none;
              // padding: 10px 0;
              border-radius: 10px
              box-sizing: border-box;
              display flex;
              justify-content: flex-start;
              align-items: center;
              flex-direction: row;
              border: 1px solid #F0F2F5;

              .el-textarea {
                flex-grow: 1;
                flex-shrink: 1;
                outline:none
                margin-left: 6px
                .el-textarea__inner::-webkit-scrollbar {
                  width: 0;
                  height: 0;
                }
              }

              .select-file {
                position absolute;
                right 80px;
                top 18px;
              }

              .send-btn {
                flex-grow: 0;
                flex-shrink: 0;
                margin-right: 5px;

                .el-button {
                  padding 8px 5px;
                  border-radius 6px;
                  background: rgb(36, 118, 253);
                  color #ffffff;
                  font-size 20px;
                }
              }

              .vertical-line {
                flex-grow: 0;
                flex-shrink: 0;
                width: 0;
                border-right: 1px solid lightgray;
                height: 15px;
                margin-right: 10px;
              }

              .voice-wrapper {
                width: 30px;
                height: 30px;
                border-radius: 15px;
                flex-shrink: 0;
                flex-grow: 0;
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                margin: 0 5px;

                .icon-microphone {
                  height: 22px;
                  width: 22px;
                  fill: #b0b0b0;
                  cursor: pointer;

                  &:hover {
                    fill: gray;
                  }
                }
              }

            }
          }
        }

        .input-box.recording {
          .send-btn {
            filter: grayscale(100%);
            opacity: 0.2;
          }

          .voice-wrapper {
            outline: 1px solid deepskyblue;
            animation: pulse linear 900ms infinite alternate;

            .icon-microphone {
              fill: #2476fd !important;
            }
          }
        }

        .input-box.transcribing {
          .send-btn {
            filter: grayscale(100%);
            opacity: 0.2;
          }

          .voice-wrapper {
            .loader {
              width: 22px;
              height: 22px;
              border: 2px solid #2476fd;
              border-radius: 14px;
              border-bottom-color: transparent;
              animation: rotation 1s linear infinite;
            }
          }
        }


        #container::-webkit-scrollbar {
          width: 0;
          height: 0;
        }
      }
    }
  }

  .el-message-box {
    width: 90%;
    max-width: 420px;
  }

  .el-message {
    min-width: 100px;
    max-width: 600px;
  }
}

.el-select-dropdown__wrap {
  .el-select-dropdown__item {
    .role-option {
      display flex
      flex-flow row
      margin-top 8px;

      .el-image {
        width 20px
        height 20px
        border-radius 50%
      }

      span {
        margin-left 5px;
        height 20px;
        line-height 20px;
      }
    }
  }
}

.account {
  display flex
  background-color #90FFC2
  color #000000
  width 100%
  border-radius 10px
  padding 10px

  .vip-logo {
    .el-image {
      width 40px
      height 40px
      border-radius 100%
      background-color #ffffff
    }
  }

  .vip-info {
    padding: 0 10px 0 10px

    h4, p {
      margin 0
    }

    h4 {
      font-weight bold
      font-size 16px;
    }

    p {
      color #333333
    }
  }

  .pay-btn {
    width 100%
    display flex
    justify-content right
    align-items center

  }
}

.el-overlay-dialog {
  .el-dialog {
    .el-dialog__body {
      .notice {
        padding 0 20px 0 20px
        line-height 1.8

        .el-text {
          font-size 16px
        }
      }
    }
  }
}

.dialog-service {
  text-align center

  .el-image {
    width 360px;
  }
}

@keyframes pulse {
  50% {
    box-shadow: 0 0 10px #0559e5;
  }
}

@keyframes rotation {
  0% {
      transform: rotate(0deg);
  }
  100% {
      transform: rotate(360deg);
  }
} 